﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Styx.Helpers;
using System.IO;
using Styx;
using Styx.Common;
using System.ComponentModel;
using DefaultValue = Styx.Helpers.DefaultValueAttribute;
using Styx.TreeSharp;

namespace Milling
{
    public class CRSettings : Settings
    {
        public static readonly CRSettings myPrefs = new CRSettings();

        public string SavePath = Path.Combine(Utilities.AssemblyDirectory, string.Format(@"Plugins/Milling/Herbkeuze.xml"));

        public CRSettings()
            : base(Path.Combine(Utilities.AssemblyDirectory, string.Format(@"Plugins/Milling/Herbkeuze.xml")))
        {
        }
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Peacebloom")]
        [Description("Add to Mill List or not")]
        public bool peacebloom { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Earthroot")]
        [Description("Add to Mill List or not")]
        public bool earthroot { get; set; }

        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Silverleaf")]
        [Description("Add to Mill List or not")]
        public bool silverleaf { get; set; }

        //MageRoyal
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("MageRoyal")]
        [Description("Add to Mill List or not")]
        public bool MageRoyal { get; set; }
        //Briarthorn
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Briarthorn")]
        [Description("Add to Mill List or not")]
        public bool Briarthorn { get; set; }
        //Bruiseweed
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Bruiseweed")]
        [Description("Add to Mill List or not")]
        public bool Bruiseweed { get; set; }
        //Stranglekelp
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Stranglekelp")]
        [Description("Add to Mill List or not")]
        public bool Stranglekelp { get; set; }
        //Swiftthistle
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Swiftthistle")]
        [Description("Add to Mill List or not")]
        public bool Swiftthistle { get; set; }
        //Grave Moss
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Grave Moss")]
        [Description("Add to Mill List or not")]
        public bool GraveMoss { get; set; }
        //Kingsblood
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Kingsblood")]
        [Description("Add to Mill List or not")]
        public bool Kingsblood { get; set; }
        //Liferoot
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Liferoot")]
        [Description("Add to Mill List or not")]
        public bool Liferoot { get; set; }
        //Wild Steelbloom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Wild Steelbloom")]
        [Description("Add to Mill List or not")]
        public bool WildSteelbloom { get; set; }
        //Dragonsteeth
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Dragonsteeth")]
        [Description("Add to Mill List or not")]
        public bool Dragonsteeth { get; set; }
        //Fadeleaf
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Fadeleaf")]
        [Description("Add to Mill List or not")]
        public bool Fadeleaf { get; set; }
        //Goldthorn
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Goldthorn")]
        [Description("Add to Mill List or not")]
        public bool Goldthorn { get; set; }
        //Khadgar's Whisker
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Khadgar's Whisker")]
        [Description("Add to Mill List or not")]
        public bool KhadgarsWhisker { get; set; }
        //Arthas Tear
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Arthas Tear")]
        [Description("Add to Mill List or not")]
        public bool ArthasTear { get; set; }
        //Blindweed
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Blindweed")]
        [Description("Add to Mill List or not")]
        public bool Blindweed { get; set; }
        //Firebloom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Firebloom")]
        [Description("Add to Mill List or not")]
        public bool Firebloom { get; set; }
        //Gromsblood
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Gromsblood")]
        [Description("Add to Mill List or not")]
        public bool Gromsblood { get; set; }
        //Purple Lotus
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Purple Lotus")]
        [Description("Add to Mill List or not")]
        public bool PurpleLotus { get; set; }
        //Sungrass
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Sungrass")]
        [Description("Add to Mill List or not")]
        public bool Sungrass { get; set; }
        //Ghost Mushroom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Ghost Mushroom")]
        [Description("Add to Mill List or not")]
        public bool GhostMushroom { get; set; }
        //Dreamfoil
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Dreamfoil")]
        [Description("Add to Mill List or not")]
        public bool Dreamfoil { get; set; }
        //Golden Sansam
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Golden Sansam")]
        [Description("Add to Mill List or not")]
        public bool GoldenSansam { get; set; }
        //Icecap
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Icecap")]
        [Description("Add to Mill List or not")]
        public bool Icecap { get; set; }
        //Mountain Silversage
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Mountain Silversage")]
        [Description("Add to Mill List or not")]
        public bool MountainSilversage { get; set; }
        //Sorrowmoss
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Sorrowmoss")]
        [Description("Add to Mill List or not")]
        public bool Sorrowmoss { get; set; }
        //Ancient Lichen
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Ancient Lichen")]
        [Description("Add to Mill List or not")]
        public bool AncientLichen { get; set; }
        //Felweed
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Felweed")]
        [Description("Add to Mill List or not")]
        public bool Felweed { get; set; }
        //Dreaming Glory
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Dreaming Glory")]
        [Description("Add to Mill List or not")]
        public bool DreamingGlory { get; set; }
        //Mana Thistle
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Mana Thistle")]
        [Description("Add to Mill List or not")]
        public bool ManaThistle { get; set; }
        //Netherbloom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Netherbloom")]
        [Description("Add to Mill List or not")]
        public bool Netherbloom { get; set; }
        //Nightmare vine
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Nightmare Vine")]
        [Description("Add to Mill List or not")]
        public bool Nightmarevine { get; set; }
        //Rageveil
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Rageveil")]
        [Description("Add to Mill List or not")]
        public bool Rageveil { get; set; }
        //Terocone
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Terocone")]
        [Description("Add to Mill List or not")]
        public bool Terocone { get; set; }
        //Talandra's Rose
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Talandra's Rose")]
        [Description("Add to Mill List or not")]
        public bool TalandrasRose { get; set; }
        //Adder's Tongue
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Adder's Tongue")]
        [Description("Add to Mill List or not")]
        public bool AddersTongue { get; set; }
        //Icethorn
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Icethorn")]
        [Description("Add to Mill List or not")]
        public bool Icethorn { get; set; }
        //Tiger Lily
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Tiger Lily")]
        [Description("Add to Mill List or not")]
        public bool TigerLily { get; set; }

        //Lichbloom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Lichbloom")]
        [Description("Add to Mill List or not")]
        public bool Lichbloom { get; set; }
        //Goldclover
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Goldclover")]
        [Description("Add to Mill List or not")]
        public bool Goldclover { get; set; }
        //Fire Leaf
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Fire Leaf")]
        [Description("Add to Mill List or not")]
        public bool FireLeaf { get; set; }
        //Deadnettle
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Deadnettle")]
        [Description("Add to Mill List or not")]
        public bool Deadnettle { get; set; }
        //Cinderbloom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Cinderbloom")]
        [Description("Add to Mill List or not")]
        public bool Cinderbloom { get; set; }
        //Twilight Jasmine
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Twilight Jasmine")]
        [Description("Add to Mill List or not")]
        public bool  TwilightJasmine { get; set; }
        //Stormvine
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Stormvine")]
        [Description("Add to Mill List or not")]
        public bool Stormvine { get; set; }
        //Heartblossom
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Heartblossom")]
        [Description("Add to Mill List or not")]
        public bool Heartblossom { get; set; }
        //Azshara's Veil
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Azshara's Veil")]
        [Description("Add to Mill List or not")]
        public bool AzsharasVeil { get; set; }
        //Whiptail
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Whiptail")]
        [Description("Add to Mill List or not")]
        public bool Whiptail { get; set; }
        //Green Tea Leaf
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Green Tea Leaf")]
        [Description("Add to Mill List or not")]
        public bool GreenTeaLeaf { get; set; }
        //Snow Lily
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Snow Lily")]
        [Description("Add to Mill List or not")]
        public bool  SnowLily { get; set; }
        //Silkweed
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Silkweed")]
        [Description("Add to Mill List or not")]
        public bool Silkweed { get; set; }
        //Rain Poppy
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Rain Poppy")]
        [Description("Add to Mill List or not")]
        public bool RainPoppy { get; set; }
        //Fool's Cap
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Fool's Cap")]
        [Description("Add to Mill List or not")]
        public bool FoolsCap { get; set; }
        //Descrated Herbs
        [Setting]
        [DefaultValue(false)]
        [Category("Herbs")]
        [DisplayName("Desecrated Herb")]
        [Description("Add to Mill List or not")]
        public bool Desecrated { get; set; }
    }
}
